home *** CD-ROM | disk | FTP | other *** search
/ Programming a Multiplayer FPS in DirectX / Programming a Multiplayer FPS in DirectX (Companion CD).iso / DirectX / dxsdk_oct2004.exe / dxsdk.exe / Samples / C++ / Direct3D / PRTPerVertex / skybox.h < prev   
Encoding:
C/C++ Source or Header  |  2004-09-27  |  1.6 KB  |  45 lines

  1. //-----------------------------------------------------------------------------
  2. // File: skybox.h
  3. //
  4. // Desc: Encapsulation of skybox geometry and textures
  5. //
  6. // Copyright (c) Microsoft Corporation. All rights reserved.
  7. //-----------------------------------------------------------------------------
  8. #ifndef _SKYBOX_H
  9. #define _SKYBOX_H
  10.  
  11.  
  12. class CSkybox
  13. {
  14. public:
  15.     CSkybox();
  16.  
  17.     HRESULT OnCreateDevice( LPDIRECT3DDEVICE9 pd3dDevice, float fSize, LPDIRECT3DCUBETEXTURE9 pEnvMap, WCHAR* strEffectFileName );
  18.     HRESULT OnCreateDevice( LPDIRECT3DDEVICE9 pd3dDevice, float fSize, WCHAR* strCubeMapFile, WCHAR* strEffectFileName );
  19.     void    OnResetDevice( const D3DSURFACE_DESC* pBackBufferSurfaceDesc );
  20.     void    Render( D3DXMATRIX* pmWorldViewProj, float fAlpha , float fScale);
  21.     void    OnLostDevice();
  22.     void    OnDestroyDevice();
  23.  
  24.     void    InitSH(LPDIRECT3DCUBETEXTURE9 pSHTex);
  25.     LPDIRECT3DCUBETEXTURE9 GetSHMap() { return m_pEnvironmentMapSH; }
  26.  
  27.     void    SetDrawSH(bool bVal) { m_bDrawSH = bVal; }
  28.  
  29.     LPDIRECT3DCUBETEXTURE9 GetEnvironmentMap() { return m_pEnvironmentMap; }
  30.  
  31. protected:
  32.  
  33.     LPDIRECT3DCUBETEXTURE9          m_pEnvironmentMap;
  34.     LPDIRECT3DCUBETEXTURE9          m_pEnvironmentMapSH;
  35.     ID3DXEffect*                    m_pEffect;       
  36.     LPDIRECT3DVERTEXBUFFER9         m_pVB;
  37.     IDirect3DVertexDeclaration9*    m_pVertexDecl;
  38.     LPDIRECT3DDEVICE9               m_pd3dDevice;   
  39.     float                           m_fSize;
  40.  
  41.     bool                            m_bDrawSH;
  42. };
  43.  
  44. #endif //_SKYBOX_H_
  45.